รากฐานของลำดับชั้น
โครงสร้างหน่วยความจำพึ่งพาการแลกเปลี่ยนข้อเสียระหว่าง หน่วยความจำแบบคงที่ (SRAM) และ หน่วยความจำแบบพลวัต (DRAM). SRAM ใช้เซลล์หน่วยความจำแบบสองสถานะที่มีทรานซิสเตอร์ 6 ตัว เซลล์หน่วยความจำแบบสองสถานะ. ลองนึกภาพเพนดูลัมกลับด้าน: มันมีเสถียรภาพในสองตำแหน่ง แต่เป็น ไม่มั่นคงชั่วคราว ในกลาง ความไม่มั่นคงชั่วคราวนี้ทำให้มันเร็ว แพง และไม่ไวต่อการรบกวน ขณะที่ DRAM จัดเก็บบิตเป็นประจุในตัวเก็บประจุขนาดเล็ก (ประมาณ 30 × 10⁻¹⁵ ฟารัด) เนื่องจากประจุรั่วไหล ทำให้ DRAM ช้าลงและต้องอัปเดตอยู่ตลอดเวลา
โครงสร้างของ DRAM และการทำธุรกรรมผ่านบัส
เพื่อลดจำนวนขาสัมผัส บิตของ DRAM จะถูกแบ่งออกเป็น $d$ เซลล์ย่อย ในตาข่ายขนาด $r \times c$ โดยที่ $rc=d$ การเข้าถึงข้อมูลต้องใช้กระบวนการสองขั้นตอน: หน่วยควบคุม หน่วยควบคุมหน่วยความจำ ส่งคำสั่ง RAS (สัญญาณเข้าถึงแถว), ย้ายแถวหนึ่งไปยังบัฟเฟอร์แถว จากนั้นตามด้วย CAS (สัญญาณเข้าถึงคอลัมน์). นี่คือเหตุผลที่ทำไม sumarraycols จึงช้าโดยธรรมชาติ: มันพลาดบัฟเฟอร์แถวซ้ำๆ
การเคลื่อนย้ายข้อมูล
ข้อมูลเดินทางผ่าน การทำธุรกรรมผ่านบัส ผ่าน บัสระบบ และ บัสหน่วยความจำ, เชื่อมโยงโดย สะพานอินพุต/เอาต์พุต. คำสั่ง movq A, %rax คำสั่ง (ธุรกรรมการอ่าน) กระตุ้นสะพานให้แปลงคำขอจากโปรเซสเซอร์เป็นสัญญาณกริดของ DRAM